package AJava1月.FJava第六周;

public class F求最值 {
    public static void main(String[] args) {
    /*需求：已知数组元素为{33,5,22,44,55}
    * 请找出数组中最大值并打印在控制台*/


        /*扩展问题
        * 问什么max要记录arr[0]，默认值不能为0吗？
        * 不能写0
        * max的初始化值一定要是数组中的值
        * 3，循环开始条件一定是0吗
        * 循环开始条件如果是0，那么第一次循环的时候是自己根自己比了一下，对结果没有任何影响，但是效率偏低
        * 为了提高效率，减少一次循环的次数，循环开始条件可以写1*/




        //1，定义数组
        int[]arr = {33,5,22,44,55};
        //定义一个变量Max用来存储最大值
        //临时认为0索引的数据是最大的
        int max = arr[0];
        //3,循环获取数组中的每一个元素
        //拿着每一个元素根Max进行比较
        for (int i = 0; i < arr.length; i++) {
            //i:索引 arr[i]元素
            if (arr[i] > max){
                max = arr[i];
            }
        }
        //当循环结束之后，max记录的就是数组中的最大值
        System.out.println(max);




        //最小值
        /*
        *  int min = arr[0];
        *  if (arr[i] < max){*/

        int min = arr[0];
        for (int i = 0; i < arr.length ; i++) {
            if (arr[i] < min) {
                min = arr[i];
            }
        }
        System.out.println(min);
    }
    }
